package com.china08.yxyapi.entity.db.attendance;

import java.sql.Time;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

import com.china08.yxyapi.entity.BaseEntityNoId;

@SuppressWarnings("serial")
@Entity
@Table(name = "yxy_yxy_tec_attendance_config", catalog = "yxy_yxy")
public class YxyYxyTecAttendanceConfig extends BaseEntityNoId {

    @Id
    @Column(name = "school_id", columnDefinition = "varchar(32) comment '学校id' ")
    private String schoolId;

    @Column(name = "times", columnDefinition = "enum('2','4','6','8') default '2' comment '每天打卡次数,支持设置为2,4,6,8次' ", nullable = false)
    private String times;

    @Column(name = "clock1", columnDefinition = "Time comment '第一次打卡时间' ", nullable = false)
    private Time clock1;

    @Column(name = "clock2", columnDefinition = "Time comment '第二次打卡时间' ", nullable = false)
    private Time clock2;

    @Column(name = "clock3", columnDefinition = "Time comment '第三次打卡时间' ")
    private Time clock3;

    @Column(name = "clock4", columnDefinition = "Time comment '第四次打卡时间' ")
    private Time clock4;

    @Column(name = "clock5", columnDefinition = "Time comment '第五次打卡时间' ")
    private Time clock5;

    @Column(name = "clock6", columnDefinition = "Time comment '第六次打卡时间' ")
    private Time clock6;

    @Column(name = "clock7", columnDefinition = "Time comment '第七次打卡时间' ")
    private Time clock7;

    @Column(name = "clock8", columnDefinition = "Time comment '第八次打卡时间' ")
    private Time clock8;

    @Column(name = "gateway", columnDefinition = "varchar(32) comment '网关地址' ")
    private String gateway;

    @Column(name = "summer_vacation_begin", columnDefinition = "date comment '暑假开始日期' ")
    private Date summerVacationBegin;
    @Column(name = "summer_vacation_end", columnDefinition = "date comment '暑假结束时间' ")
    private Date summerVacationEnd;

    @Column(name = "winter_cacation_begin", columnDefinition = "date comment '寒假开始时间' ")
    private Date winterVacationBegin;
    @Column(name = "winter_vacation_end", columnDefinition = "date comment '寒假结束时间' ")
    private Date winterVacationEnd;

    /*
     * 星期一到星期日 工作日配置, 星期一到星期五 默认为1.
     */
    @Column(name = "monday", columnDefinition = "tinyint(1) default 1 comment '是否为工作日' ")
    private Boolean monday = true;

    @Column(name = "tuesday", columnDefinition = "tinyint(1) default 1 comment '是否为工作日' ")
    private Boolean tuesday = true;

    @Column(name = "wednesday", columnDefinition = "tinyint(1) default 1 comment '是否为工作日' ")
    private Boolean wednesday = true;

    @Column(name = "thursday", columnDefinition = "tinyint(1) default 1 comment '是否为工作日' ")
    private Boolean thursday = true;

    @Column(name = "friday", columnDefinition = "tinyint(1) default 1 comment '是否为工作日' ")
    private Boolean friday = true;

    @Column(name = "saturday", columnDefinition = "tinyint(1)  default 0 comment '是否工作日' ")
    private Boolean saturday = false;

    @Column(name = "sunday", columnDefinition = "tinyint(1) default 0 comment '是否为工作日' ")
    private Boolean sunday = false;
    /*
     * 星期一到星期日 工作日配置星期一到星期五 默认为1.
     */

    @Column(name = "latitude", columnDefinition = "double(13,10) comment '坐标经度'")
    private Double latitude;
    @Column(name = "longitude", columnDefinition = "double(13,10) comment '坐标纬度' ")
    private Double longitude;
    @Column(name = "distance", columnDefinition = "int(11) comment '打卡距离' ")
    private Integer distance;

    @Column(name = "status", nullable = false, columnDefinition = "int(11) default 1 comment '状态1-正常 0-失效' ")
    private Integer status;

    public String getSchoolId() {
        return schoolId;
    }

    public void setSchoolId(String schoolId) {
        this.schoolId = schoolId;
    }

    public Time getClock1() {
        return clock1;
    }

    public void setClock1(Time clock1) {
        this.clock1 = clock1;
    }

    public Time getClock2() {
        return clock2;
    }

    public void setClock2(Time clock2) {
        this.clock2 = clock2;
    }

    public Time getClock3() {
        return clock3;
    }

    public void setClock3(Time clock3) {
        this.clock3 = clock3;
    }

    public Time getClock4() {
        return clock4;
    }

    public void setClock4(Time clock4) {
        this.clock4 = clock4;
    }

    public Time getClock5() {
        return clock5;
    }

    public void setClock5(Time clock5) {
        this.clock5 = clock5;
    }

    public Time getClock6() {
        return clock6;
    }

    public void setClock6(Time clock6) {
        this.clock6 = clock6;
    }

    public Time getClock7() {
        return clock7;
    }

    public void setClock7(Time clock7) {
        this.clock7 = clock7;
    }

    public Time getClock8() {
        return clock8;
    }

    public void setClock8(Time clock8) {
        this.clock8 = clock8;
    }

    public String getGateway() {
        return gateway;
    }

    public void setGateway(String gateway) {
        this.gateway = gateway;
    }

    public Double getLatitude() {
        return latitude;
    }

    public void setLatitude(Double latitude) {
        this.latitude = latitude;
    }

    public Double getLongitude() {
        return longitude;
    }

    public void setLongitude(Double longitude) {
        this.longitude = longitude;
    }

    public Integer getDistance() {
        return distance;
    }

    public void setDistance(Integer distance) {
        this.distance = distance;
    }

    public String getTimes() {
        return times;
    }

    public void setTimes(String times) {
        this.times = times;
    }

    public Date getSummerVacationBegin() {
        return summerVacationBegin;
    }

    public void setSummerVacationBegin(Date summerVacationBegin) {
        this.summerVacationBegin = summerVacationBegin;
    }

    public Date getSummerVacationEnd() {
        return summerVacationEnd;
    }

    public void setSummerVacationEnd(Date summerVacationEnd) {
        this.summerVacationEnd = summerVacationEnd;
    }

    public Date getWinterVacationBegin() {
        return winterVacationBegin;
    }

    public void setWinterVacationBegin(Date winterVacationBegin) {
        this.winterVacationBegin = winterVacationBegin;
    }

    public Date getWinterVacationEnd() {
        return winterVacationEnd;
    }

    public void setWinterVacationEnd(Date winterVacationEnd) {
        this.winterVacationEnd = winterVacationEnd;
    }

    public Boolean getMonday() {
        return monday;
    }

    public void setMonday(Boolean monday) {
        this.monday = monday;
    }

    public Boolean getTuesday() {
        return tuesday;
    }

    public void setTuesday(Boolean tuesday) {
        this.tuesday = tuesday;
    }

    public Boolean getWednesday() {
        return wednesday;
    }

    public void setWednesday(Boolean wednesday) {
        this.wednesday = wednesday;
    }

    public Boolean getThursday() {
        return thursday;
    }

    public void setThursday(Boolean thursday) {
        this.thursday = thursday;
    }

    public Boolean getFriday() {
        return friday;
    }

    public void setFriday(Boolean friday) {
        this.friday = friday;
    }

    public Boolean getSaturday() {
        return saturday;
    }

    public void setSaturday(Boolean saturday) {
        this.saturday = saturday;
    }

    public Boolean getSunday() {
        return sunday;
    }

    public void setSunday(Boolean sunday) {
        this.sunday = sunday;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

}
